import axios from 'axios'
import nprogress from 'nprogress'

// 1 2 3
// 3个处理 1. 处理loading 2. 处理token 3. 错误状态

// 1. 创建
const instance = axios.create({
  // baseURL:''
  timeout: 5000,
})

// 2个拦截 -> 拦截请求 - req
instance.interceptors.request.use(
  (config) => {
    // 进度条 开始
    nprogress.start()
    return config
  },
  (err) => {
    return Promise.reject(err)
  }
)

// 拦截相应 -> res
instance.interceptors.response.use(
  (response) => {
    // 进度条结束
    nprogress.done()
    return response
  },
  (err) => {
    this.$toast(err.message)
    return Promise.reject(err)
  }
)

export default instance
